package com.team.auth.domain;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 商户信息
 * @TableName biz_merchant_info
 */
public class BizMerchantInfo {
    /**
     * 商户ID
     */
    private Long id;

    /**
     * 店面
     */
    private String merchantName;

    /**
     * 经度
     */
    private BigDecimal longitude;

    /**
     * 纬度
     */
    private BigDecimal latitude;

    /**
     * 联系人姓名
     */
    private String contactName;

    /**
     * 联系人电话
     */
    private String contactPhone;

    /**
     * 门店缩略图
     */
    private String photo;

    /**
     * 星级数
     */
    private BigDecimal starAmount;

    /**
     * 门店地址
     */
    private String address;

    /**
     * 审核状态（0待审核、1已审核、2已拒绝）
     */
    private Integer auditStatusId;

    /**
     * 销量
     */
    private Integer sales;

    /**
     * 状态（0正常、1停用）
     */
    private String status;

    /**
     * 删除标志（0表示存在，1表示删除）
     */
    private String delFlag;

    /**
     * 经营区域
     */
    private String operatingArea;

    /**
     * 注册时间
     */
    private Date regTime;

    /**
     * 开始营业时间
     */
    private Date startTime;

    /**
     * 停止营业时间
     */
    private Date endTime;

    /**
     * 系统用户表外键
     */
    private Long userId;

    /**
     * 关联认证表
     */
    private Integer certificateId;

    /**
     * 商户ID
     */
    public Long getId() {
        return id;
    }

    /**
     * 商户ID
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 店面
     */
    public String getMerchantName() {
        return merchantName;
    }

    /**
     * 店面
     */
    public void setMerchantName(String merchantName) {
        this.merchantName = merchantName;
    }

    /**
     * 经度
     */
    public BigDecimal getLongitude() {
        return longitude;
    }

    /**
     * 经度
     */
    public void setLongitude(BigDecimal longitude) {
        this.longitude = longitude;
    }

    /**
     * 纬度
     */
    public BigDecimal getLatitude() {
        return latitude;
    }

    /**
     * 纬度
     */
    public void setLatitude(BigDecimal latitude) {
        this.latitude = latitude;
    }

    /**
     * 联系人姓名
     */
    public String getContactName() {
        return contactName;
    }

    /**
     * 联系人姓名
     */
    public void setContactName(String contactName) {
        this.contactName = contactName;
    }

    /**
     * 联系人电话
     */
    public String getContactPhone() {
        return contactPhone;
    }

    /**
     * 联系人电话
     */
    public void setContactPhone(String contactPhone) {
        this.contactPhone = contactPhone;
    }

    /**
     * 门店缩略图
     */
    public String getPhoto() {
        return photo;
    }

    /**
     * 门店缩略图
     */
    public void setPhoto(String photo) {
        this.photo = photo;
    }

    /**
     * 星级数
     */
    public BigDecimal getStarAmount() {
        return starAmount;
    }

    /**
     * 星级数
     */
    public void setStarAmount(BigDecimal starAmount) {
        this.starAmount = starAmount;
    }

    /**
     * 门店地址
     */
    public String getAddress() {
        return address;
    }

    /**
     * 门店地址
     */
    public void setAddress(String address) {
        this.address = address;
    }

    /**
     * 审核状态（0待审核、1已审核、2已拒绝）
     */
    public Integer getAuditStatusId() {
        return auditStatusId;
    }

    /**
     * 审核状态（0待审核、1已审核、2已拒绝）
     */
    public void setAuditStatusId(Integer auditStatusId) {
        this.auditStatusId = auditStatusId;
    }

    /**
     * 销量
     */
    public Integer getSales() {
        return sales;
    }

    /**
     * 销量
     */
    public void setSales(Integer sales) {
        this.sales = sales;
    }

    /**
     * 状态（0正常、1停用）
     */
    public String getStatus() {
        return status;
    }

    /**
     * 状态（0正常、1停用）
     */
    public void setStatus(String status) {
        this.status = status;
    }

    /**
     * 删除标志（0表示存在，1表示删除）
     */
    public String getDelFlag() {
        return delFlag;
    }

    /**
     * 删除标志（0表示存在，1表示删除）
     */
    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    /**
     * 经营区域
     */
    public String getOperatingArea() {
        return operatingArea;
    }

    /**
     * 经营区域
     */
    public void setOperatingArea(String operatingArea) {
        this.operatingArea = operatingArea;
    }

    /**
     * 注册时间
     */
    public Date getRegTime() {
        return regTime;
    }

    /**
     * 注册时间
     */
    public void setRegTime(Date regTime) {
        this.regTime = regTime;
    }

    /**
     * 开始营业时间
     */
    public Date getStartTime() {
        return startTime;
    }

    /**
     * 开始营业时间
     */
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    /**
     * 停止营业时间
     */
    public Date getEndTime() {
        return endTime;
    }

    /**
     * 停止营业时间
     */
    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    /**
     * 系统用户表外键
     */
    public Long getUserId() {
        return userId;
    }

    /**
     * 系统用户表外键
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 关联认证表
     */
    public Integer getCertificateId() {
        return certificateId;
    }

    /**
     * 关联认证表
     */
    public void setCertificateId(Integer certificateId) {
        this.certificateId = certificateId;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        BizMerchantInfo other = (BizMerchantInfo) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getMerchantName() == null ? other.getMerchantName() == null : this.getMerchantName().equals(other.getMerchantName()))
            && (this.getLongitude() == null ? other.getLongitude() == null : this.getLongitude().equals(other.getLongitude()))
            && (this.getLatitude() == null ? other.getLatitude() == null : this.getLatitude().equals(other.getLatitude()))
            && (this.getContactName() == null ? other.getContactName() == null : this.getContactName().equals(other.getContactName()))
            && (this.getContactPhone() == null ? other.getContactPhone() == null : this.getContactPhone().equals(other.getContactPhone()))
            && (this.getPhoto() == null ? other.getPhoto() == null : this.getPhoto().equals(other.getPhoto()))
            && (this.getStarAmount() == null ? other.getStarAmount() == null : this.getStarAmount().equals(other.getStarAmount()))
            && (this.getAddress() == null ? other.getAddress() == null : this.getAddress().equals(other.getAddress()))
            && (this.getAuditStatusId() == null ? other.getAuditStatusId() == null : this.getAuditStatusId().equals(other.getAuditStatusId()))
            && (this.getSales() == null ? other.getSales() == null : this.getSales().equals(other.getSales()))
            && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
            && (this.getDelFlag() == null ? other.getDelFlag() == null : this.getDelFlag().equals(other.getDelFlag()))
            && (this.getOperatingArea() == null ? other.getOperatingArea() == null : this.getOperatingArea().equals(other.getOperatingArea()))
            && (this.getRegTime() == null ? other.getRegTime() == null : this.getRegTime().equals(other.getRegTime()))
            && (this.getStartTime() == null ? other.getStartTime() == null : this.getStartTime().equals(other.getStartTime()))
            && (this.getEndTime() == null ? other.getEndTime() == null : this.getEndTime().equals(other.getEndTime()))
            && (this.getUserId() == null ? other.getUserId() == null : this.getUserId().equals(other.getUserId()))
            && (this.getCertificateId() == null ? other.getCertificateId() == null : this.getCertificateId().equals(other.getCertificateId()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getMerchantName() == null) ? 0 : getMerchantName().hashCode());
        result = prime * result + ((getLongitude() == null) ? 0 : getLongitude().hashCode());
        result = prime * result + ((getLatitude() == null) ? 0 : getLatitude().hashCode());
        result = prime * result + ((getContactName() == null) ? 0 : getContactName().hashCode());
        result = prime * result + ((getContactPhone() == null) ? 0 : getContactPhone().hashCode());
        result = prime * result + ((getPhoto() == null) ? 0 : getPhoto().hashCode());
        result = prime * result + ((getStarAmount() == null) ? 0 : getStarAmount().hashCode());
        result = prime * result + ((getAddress() == null) ? 0 : getAddress().hashCode());
        result = prime * result + ((getAuditStatusId() == null) ? 0 : getAuditStatusId().hashCode());
        result = prime * result + ((getSales() == null) ? 0 : getSales().hashCode());
        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
        result = prime * result + ((getDelFlag() == null) ? 0 : getDelFlag().hashCode());
        result = prime * result + ((getOperatingArea() == null) ? 0 : getOperatingArea().hashCode());
        result = prime * result + ((getRegTime() == null) ? 0 : getRegTime().hashCode());
        result = prime * result + ((getStartTime() == null) ? 0 : getStartTime().hashCode());
        result = prime * result + ((getEndTime() == null) ? 0 : getEndTime().hashCode());
        result = prime * result + ((getUserId() == null) ? 0 : getUserId().hashCode());
        result = prime * result + ((getCertificateId() == null) ? 0 : getCertificateId().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", merchantName=").append(merchantName);
        sb.append(", longitude=").append(longitude);
        sb.append(", latitude=").append(latitude);
        sb.append(", contactName=").append(contactName);
        sb.append(", contactPhone=").append(contactPhone);
        sb.append(", photo=").append(photo);
        sb.append(", starAmount=").append(starAmount);
        sb.append(", address=").append(address);
        sb.append(", auditStatusId=").append(auditStatusId);
        sb.append(", sales=").append(sales);
        sb.append(", status=").append(status);
        sb.append(", delFlag=").append(delFlag);
        sb.append(", operatingArea=").append(operatingArea);
        sb.append(", regTime=").append(regTime);
        sb.append(", startTime=").append(startTime);
        sb.append(", endTime=").append(endTime);
        sb.append(", userId=").append(userId);
        sb.append(", certificateId=").append(certificateId);
        sb.append("]");
        return sb.toString();
    }
}